export function createElement (type, props, ...children) {
  // 问题1：处理文本节点
  // 问题2：null/true/falseb不能被处理成文本节点
  // 问题3：不能通过props.children (组件中)拿到子节点
  const subElements = [].concat(...children).reduce((result, child) => {
    if (child !== true && child !== false && child !== null) {

      if (child instanceof Object) {
        result.push(child)
      } else {
        result.push(createElement('text', { textContent: child }))
      }
    }
    return result
  }, [])
  return {
    type,
    props: Object.assign({ children: subElements }, props)
  }
}